使用Android编写一个2048小游戏(一) |
您所在的位置:网站首页 › android 2048小游戏 › 使用Android编写一个2048小游戏(一) |
2048小游戏还是很简单的 这个是我做的 实现方式,不管上下左右其实结果都是一样的,而且每一行的计算也是一样的,只要实现了一行的计算就可以实现所有的计算。 这里使用了linkedList作为一行数据结构,将一行的数据按顺序放入list,空格使用0来填入 void OneLineCount(){ //去掉所有的空格‘0’ for (int p = 0; p < mnumberlist.size();) { if (mnumberlist.get(p) == 0) { mnumberlist.remove(p); }else { p++; } } //将相邻的数字作比较相等就去掉两个数字并在前一个数字添加他们的两倍,然后k++跳到下一个数字,当k位置是最后一个数字时就退出因为最后一个没有后面的数字了 for (int k = 0; k < mnumberlist.size()-1; k++){ if (mnumberlist.get(k).equals(mnumberlist.get(k+1))){ Integer a = new Integer(mnumberlist.get(k)*2); mnumberlist.remove(k); mnumberlist.add(k,a); mnumberlist.remove(k+1); } } }我使用int[4][4]二维数组表示整个表格,在滑动之后就按滑动方向的顺序将每一行添加到LinkedList里面下面是向左滑时的代码 void leftSroll(){ for (int i = 0; i < 4 ;i++){ for (int j = 0; j < 4;j++){ //将一行填入list,每种滑动顺序都不一样 mnumberlist.add(j,tablet[i][j]); } OneLineCount();//一行的计算 for (int c = 0 ; c |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |